package com.biz.primus.commodity.vo.frontend;

import com.biz.primus.base.enums.PromotionChannelEnum;
import com.biz.primus.base.global.GlobalValue;
import com.biz.primus.base.global.Ref;
import com.biz.primus.base.vo.IPromotionReqVo;
import com.biz.primus.commodity.enums.ProductRecommend;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;

/**
 * 推荐商品请求Vo
 *
 * @author david-liu
 * @date 2017年02月15日
 * @reviewer
 */
@Data
@ApiModel("推荐商品请求Vo")
public class RecommendProductReqVo implements IPromotionReqVo {
    private static final long serialVersionUID = 7707977614423956411L;


    @ApiModelProperty("用户Id")
    @Ref(GlobalValue.memberId)
    private Long memberId;

    @ApiModelProperty("商品编码")
    private String productCode;

    @ApiModelProperty("商品Id")
    private Long productId;

    @ApiModelProperty("门店Id")
    @Ref(GlobalValue.depotId)
    private Long shopId;

    @ApiModelProperty("门店编码")
    @Ref(GlobalValue.depotCode)
    private String depotCode;

    @ApiModelProperty("不用填写 门店经度")
    private BigDecimal depotLon;

    @ApiModelProperty("不用填写 门店纬度")
    private BigDecimal depotLat;

    @ApiModelProperty("用户经度")
    @Ref(GlobalValue.lon)
    private BigDecimal userLon;

    @ApiModelProperty("用户纬度")
    @Ref(GlobalValue.lat)
    private BigDecimal userLat;

    @ApiModelProperty("促销活动渠道")
    private PromotionChannelEnum appChannel;

    @ApiModelProperty("城市Id")
    @Ref(GlobalValue.cityId)
    private Long cityId;

    @ApiModelProperty("区域Id")
    private Long zoneId;

    @ApiModelProperty("省Id")
    @Ref(GlobalValue.provinceId)
    private Long provinceId;

    @ApiModelProperty("推荐场景")
    private ProductRecommend productRecommend;

    @ApiModelProperty("立即送模式为true ,默认为普通送")
    private Boolean depotProduct;

    @Override
    public Boolean getUserFirstOrder() {
        return Boolean.FALSE;
    }

}
